草庐IT

C++ 3D 数学库

全部标签

C#:通用数学函数(Min、Max 等)

我正在考虑为基本数学运算(如Min、Max等)编写通用函数。但是我不知道如何比较两个通用类型:publicTMax(Tv1,Tv2)whereT:struct{return(v1>v2?v1:v2);}那怎么样?谢谢。 最佳答案 您可能想要constrain要实现的通用类型IComparable:publicTMax(Tv1,Tv2)whereT:struct,IComparable然后使用CompareTo方法:{return(v1.CompareTo(v2)>0?v1:v2);} 关

P2-Net:用于2D像素与3D点匹配的局部特征的联合描述符和检测器(ICCV 2021)

1)论文:P2-Net:Jointdescriptionanddetectionoflocalfeaturesforpixelandpointmatching2)论文地址:https://openaccess.thecvf.com/content/ICCV2021/papers/Wang_P2-Net_Joint_Description_and_Detection_of_Local_Features_for_Pixel_ICCV_2021_paper.pdf3)代码地址:https://github.com/BingCS/P2-Net4)论文来源:ICCV20215)论文作者:BingWang

D3D11和Vulkan共享资源 (一)

很久以前研究过用NV_DX_interop扩展让D3D和OpenGL共享资源,OpenGL在当初设计的时候电脑和操作系统还是个相对比较简单的东西,因此OpenGLAPI设计没有考虑到现在计算机架构的一些特性,比如多核编程和多显卡并发。最近几年出来个Vulkan来接OpenGL的班,所以继续走起研究下D3D11和Vulkan的共享。Vulkan主程序用了vulkantutorial下面的一个教程Combinedimagesampler,这段代码演示了把一个纹理vkImage贴到一个3D的四边形面上.接下来是尝试打通一个D3D11Texture2D和这个vkImage存放图像数据的buffer,这

c# - 使用 Linq 进行数学统计

我有一个person对象的集合(IEnumerable),每个人都有一个age属性。我想生成集合的统计数据,例如此年龄属性的最大值、最小值、平均值、中值等。使用LINQ执行此操作的最优雅方法是什么? 最佳答案 这是Median的完整通用实现,它可以正确处理空集合和可为null的类型。它以Enumerable.Average的风格对LINQ友好,例如:double?medianAge=people.Median(p=>p.Age);当集合中没有非空值时,此实现返回null,但如果您不喜欢可为空的返回类型,则可以轻松地将其更改为抛出异常

c# - C# 中 3D 数学的好库?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion我正在编写一个工具,用于处理大量3D数据,执行诸如旋转对象、平移、缩放等所有有用的事情。有谁知道已经有一些这种常见的3D东西的好库?目前我对可视化数据不感兴趣,主要对执行操作感兴趣。我知道我现在需要的东西:2D/3D/4D向量(加法、减法、点积、叉积等...)使用矩阵旋转/平移/缩放四元数我能够找到Sharp3D图书馆,但它似乎可以做我想做的事,但很长时间没有更新了。

c# - .NET 中的快速矢量数学 - 有哪些选项?

我的3D图形软件是使用SlimDX用C#编写的,它在CPU上执行大量矢量运算。(在这种特定情况下,无法将工作卸载到GPU)。我怎样才能使我的向量数学运算更快?到目前为止,我已经找到了这些方法:在Mono而不是Microsoft.NET上运行,因为它们支持SIMD。不是这个项目的选择。SlimGen,一个在运行时注入(inject)高性能数学代码的项目。遗憾的是,该项目尚未处于可用状态。使用使用SSE指令的编译器用C++编写DLL。与来自C#的DLL互操作。是否有任何其他选项可以在.NET中更快地完成矢量数学? 最佳答案 使用Micr

c# - 在 Unity3d 中获取 App Bundle 版本

简单的问题,但似乎很难找到。我正在构建Android和iOS游戏。我想提取应用程序的版本(即“2.0.1”)(如果AppStore/GooglePlay上有更新的版本则显示弹出窗口)。有人知道如何以编程方式执行此操作吗? 最佳答案 OUTDATED:Whilethisanswerwasperfectlyvalidattimeofwriting,theinformationitcontainsisoutdated.Thereisabetterwaytodothisnow,seethisanswerinstead.Theanswerha

C# - 数学圆

我正在尝试了解如何使用C#舍入到最接近的十分位。例如,我有一个double类型的值。这个双倍目前设置为10.75。但是,我需要四舍五入然后截断所有超过十分之一的位置。在这种情况下,我正在寻找10.8的值。我如何在C#中四舍五入到十分位?谢谢! 最佳答案 Math.Round(yourNumber,1)第二个参数是四舍五入的小数位数。在您的情况下,您需要小数点后一位作为最终结果。 关于C#-数学圆,我们在StackOverflow上找到一个类似的问题: http

c# - 从 2D 到 3D 的运动

谁能给我一些意见或建议我需要找出照片中的物体从一个位置移动到另一个位置的程度(实际上我需要计算相机在两张图像之间移动了多少,但是因为物体将保持静止并且只是在其上旋转Y轴我认为移动图像会更容易)。与此示例几乎相同,但没有那么复杂。所以我拍摄了rubiks立方体的第一张照片,并按照此处的示例在立方体上选择了4个点该图像是Texture2D,蓝色圆圈表示用户选择的立方体正面的4个点。这4个点存储在列表中,下一个图像被加载,看起来像这样再次,用户必须选择与之前相同的面(白色面)的4个点。然后将这4个点存储到一个新的列表中。所以现在我有两个列表,我需要计算“整个正面”从图像1移动(旋转/缩放/平

c# - RenderTargetBitmap 和 Viewport3D - 质量问题

我想将3D场景从Viewport3D导出​​到位图。执行此操作的明显方法是使用RenderTargetBitmap——但是当我这样做时,导出位图的质量明显低于屏幕图像。在互联网上环顾四周,似乎RenderTargetBitmap没有利用硬件渲染。这意味着渲染是在Tier0完成的。.这意味着没有mip-mapping等,因此导出图像的质量会降低。有谁知道如何以屏幕质量导出Viewport3D的位图?澄清虽然下面给出的示例没有显示这一点,我最终需要将Viewport3D的位图导出到一个文件中。据我所知,唯一的方法是将图像导入派生自BitmapSource的东西。下面的Cplotts显示使用